Skip to content

chore(main): release 4.1.0#257

Merged
bokelley merged 1 commit intomainfrom
release-please--branches--main
Apr 30, 2026
Merged

chore(main): release 4.1.0#257
bokelley merged 1 commit intomainfrom
release-please--branches--main

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot commented Apr 23, 2026

🤖 I have created a release beep boop

4.1.0 (2026-04-30)

⚠ BREAKING CHANGES

  • migration: FormatId.__name__ and __qualname__ change from "FormatId" to "FormatReferenceStructuredObject" because AdCP 3.0.1 polished the schema title on core/format-id.json. The public adcp.FormatId alias keeps working — Format(format_id= FormatId(...)) and isinstance(x, FormatId) are unchanged. Two niche cases break: pickled FormatId instances from 4.0 fail to unpickle on 4.1, and snapshot tests / log scrapers asserting on __name__ see the rename. See MIGRATION_v4.0_to_v4.1.md.
  • a2a: ADCPClient.pending_task_id is now ADCPClient.active_task_id (same for A2AAdapter). The constructor's context_id= kwarg and reset_context() now raise TypeError (was ValueError) on non-A2A protocols — the string value is fine, the operation doesn't apply to MCP.

Features

  • a2a: checkpoint/from_checkpoint API, harden context-id retention (a17ffb3)
  • a2a: expose peer protocol versions, add force_a2a_version pin (3898c53)
  • a2a: migrate to a2a-sdk 1.0 with 0.3 wire-compat shim (c07db7d)
  • a2a: migrate to a2a-sdk 1.0 with 0.3 wire-compat shim (Release-As: 4.1.0) (28a4a13)
  • adcp: support ADCP_BASE_URL env override in sync_schemas.py (#285) (a2bc977)
  • adcp: sync canonical agent skills from protocol tarball (#275) (5312f05)
  • agents: /claude-triage comment nudge (5af8b47)
  • agents: /claude-triage comment nudge (d3b8b28)
  • agents: add Claude Code routines scaffolding (aa23ef3)
  • agents: add Claude Code routines scaffolding (d312abf)
  • agents: add silent-triage path to triage prompt (6abb495)
  • agents: commit .claude/agents/ experts for cloud routine access (55144f2)
  • agents: migrate manual triage nudge to /triage slash-command-dispatch (#267) (6bd434d)
  • agents: security + product review fixes for triage routine (cbafef5)
  • agents: switch triage nudge prefix to @claude-triage (#265) (77bfce2)
  • agents: triage bundles ready items, never splits issues (#266) (2227a6b)
  • agents: triage default — execute when outcome is clear (e3f8a6c)
  • agents: triage defer subtypes + partial-rollout linkage rule (#273) (c97aa95)
  • agents: triage fires on comments + claude-triaging lifecycle label (#277) (604d795)
  • agents: triage PR ergonomics — refs adcp#3121 (#279) (31606eb)
  • agents: triage prompt handles RFC/epic/scope bucket/milestone (cac3525)
  • agents: triage runs pre-PR build+test gate before expert review (#271) (8fcc5ee)
  • agents: triage runs pre-PR expert review on diff before opening PR (#269) (46dd708)
  • agents: triage v2 — expert consultation + race + coverage (bf6e18b)
  • client: ADCPClient.from_mcp_client() factory for in-process MCP transport (#293) (d83aa53)
  • signing: close 4 SSRF gaps and add opt-in port hardening (foundation audit) (84b837e)
  • signing: default replay store, signed-fetch preset, migration guide (#272) (52019b8)
  • signing: drain three foundation-audit deferreds (#298, #299, #300) (072998a)
  • validation: schema-driven validation with client hooks and opt-in server middleware (5cbac87)
  • validation: schema-driven validation with client hooks and opt-in server middleware (a38ff57)

Bug Fixes

  • a2a: address expert-review feedback on 1.0 migration (7e54b97)
  • adcp: skip eager httpx.AsyncClient alloc in WebhookSender.aenter on owned-client path (#301) (4bd45d1), closes #300
  • agents: already-engaged check + tighten label creation (02baa89)
  • agents: triage already-engaged + ship-more (missed in #259) (ca42d29)
  • agents: webhook-miss sweep grace period (no double-fire) (#280) (3a5f1c2)
  • deps: add types-protobuf to pip dev extras (801ac16)
  • handlers: sync MEDIA_BUY_STATE_MACHINE with spec v3 enum (#289) (54fd18b)
  • signing: validate-before-sign symmetry in deliver() + HMAC SSRF coverage + 4.1 migration notes (bc8da3a)
  • triage: drop apostrophe from MODE text (port of adcp#3325) (#287) (2efa423)
  • validation: address code + security review feedback (5bf9434)

Documentation

  • migration: add v4.0 → v4.1 migration guide (#302) (01a1068)
  • readme: note AAO IPR Policy requirement for contributors (43d77f9)
  • readme: note AAO IPR Policy requirement for contributors (ba03ecb)

This PR was generated with Release Please. See documentation.

@github-actions github-actions Bot changed the title chore(main): release 4.1.0 chore(main): release 5.0.0 Apr 23, 2026
@github-actions github-actions Bot force-pushed the release-please--branches--main branch from 07820a4 to c2f87d9 Compare April 23, 2026 11:20
@github-actions github-actions Bot changed the title chore(main): release 5.0.0 chore(main): release 4.1.0 Apr 23, 2026
@github-actions github-actions Bot force-pushed the release-please--branches--main branch 3 times, most recently from 7503200 to f15546b Compare April 23, 2026 22:24
@github-actions github-actions Bot requested a review from bokelley as a code owner April 23, 2026 22:24
@github-actions github-actions Bot force-pushed the release-please--branches--main branch from f15546b to 1532889 Compare April 24, 2026 01:03
@github-actions github-actions Bot force-pushed the release-please--branches--main branch 13 times, most recently from 7b14b90 to aa1c2a6 Compare April 26, 2026 22:33
@github-actions github-actions Bot force-pushed the release-please--branches--main branch 5 times, most recently from f309751 to 5ca8f45 Compare April 29, 2026 23:44
@github-actions github-actions Bot force-pushed the release-please--branches--main branch 2 times, most recently from e00fb7d to 4c2302a Compare April 29, 2026 23:51
@github-actions github-actions Bot force-pushed the release-please--branches--main branch from 4c2302a to c3ced8c Compare April 30, 2026 00:14
@bokelley bokelley merged commit 2b36d67 into main Apr 30, 2026
1 check passed
@github-actions
Copy link
Copy Markdown
Contributor Author

🤖 Created releases:

🌻

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Cleanup: WebhookSender.__aenter__ eagerly constructs unused httpx.AsyncClient on owned-client path

1 participant